package com.atguigu.gulimail.Factory;

import com.atguigu.gulimail.Enum.PayEnum;
import com.atguigu.gulimail.Strategy.PayStrategy;
import com.atguigu.gulimail.util.SpringContextUtil;

/**
 * @author Guo 2022/9/7 9:52:21
 */
public class PayStrategyFactory {

    /**
     * 通过渠道码获取支付策略具体实现类
     * */
    public static PayStrategy getPayStrategy(String channel){
        PayEnum payEnum = PayEnum.findPayEnumByChannel(channel);
        if(payEnum == null){
            return null;
        }
        return SpringContextUtil.getBean(payEnum.getBeanName(),PayStrategy.class);
    }


}
